package prjtgl.bdd.comptes.interactions_utilisateur;

import java.util.List;
import org.hibernate.Query;
import prjtgl.bdd.HGeneral;
import prjtgl.metier.comptes.Utilisateur;
import prjtgl.metier.comptes.interactions_utilisateur.Signalement;

/**
 * Gestionnaire BDD des signalements
 * @author Amirouche
 */
public class HSignalement extends HGeneral {
	
	/**
	 * Liste tous les signalements connus en BDD
	 * @return 
	 */
	public List<Signalement> listerTout(){
		session.beginTransaction();
		Query q = session.createQuery("from Signalement");
		List<Signalement> signalements = q.list();
		return signalements;
	}
	
	/**
	 * Liste des signalements que l'utilisateur a signale
	 * @param utilisateur Utilisateur signalant
	 * @return Liste des signalements
	 */
	public List<Signalement> listerSignales(Utilisateur utilisateur){
		session.beginTransaction();
		Query q = session.createQuery("from Signalement where id_signalant=" + utilisateur.getId());
		List<Signalement> signalements = q.list();
		return signalements;
	}
	
	/**
	 * Liste des signalements recus par un utilisateur
	 * @param utilisateur Utilisateur signale
	 * @return Liste des signalements
	 */
	public List<Signalement> listerSignalePar(Utilisateur utilisateur){
		session.beginTransaction();
		Query q = session.createQuery("from Signalement where id_signale=" + utilisateur.getId());
		List<Signalement> signalements = q.list();
		return signalements;
	}
}